CUE Voicemail + VPIM networking (CUE to unity)

CUE Voicemail + VPIM networking (CUE to unity) in 10 minutes

 

 

Scenario#

CUE ip = 192.168.20.253

CME ip = 192.168.20.254

NTP server; 2.2.2.2

 

SITEC phone#1 = 5001

SITEC phone#2 = 5002

HQ phone#1 = 3001

CME to CUE VM pilot = 4444

———————————————-

 

CME Config;

========

I am assuming youv’e alredy created a SIP voip dialpeer cme to CUE. Also created 2 MWI-on/off DNs on CME, incoming called number of mwi-on/off under cme-cue sip-voip-dialpeer. Now lets straight hop onto CUE module. Please note, 10 minutes doesn’t include above CME setup and DNS for VPIM.

step#1: configure the cue module itself

==========================

config t

interface Service-Engine0/0

description ====== AIM CUE Module ======

ip unnumbered FastEthernet0/0.102

service-module ip address 192.168.20.253 255.255.255.0

service-module ip default-gateway 192.168.20.254

 

ip route 192.168.20.253 255.255.255.255 Service-Engine0/0 <— a must

 

thats all.

 

Step#2; CUE initial setup

——————–

Rack02R3#service-module service-Engine 0/0 sess

Trying 192.168.20.253 2066 … Open

 

Site C router

————

Please answer y or n.

 

IMPORTANT:: DNS Configuration:

IMPORTANT::

IMPORTANT:: This allows the entry of hostnames, for example foo.cisco.com, inste

ad

IMPORTANT:: of IP addresses like 1.100.10.205 for servers used by CUE. In order

IMPORTANT:: to configure DNS you must know the IP address of at least one of you

r

IMPORTANT:: DNS Servers.

 

Would you like to use DNS for CUE (y,n)?y

 

WARNING: If DNS is not used CUE will require the use

WARNING: of IP addresses.

 

Are you sure (y,n)? y

 

Enter IP Address of the Primary NTP Server

(IP address, or enter for 192.168.20.254): 192.168.20.254

 

Please identify a location so that time zone rules can be set correctly.

Please select a continent or ocean.

1) Africa           4) Arctic Ocean     7) Australia       10) Pacific Ocean

2) Americas         5) Asia             8) Europe

3) Antarctica       6) Atlantic Ocean   9) Indian Ocean

#? 5 <————————————————

Please select a country.

1) Afghanistan           18) Japan                 35) Philippines

2) Armenia               19) Jordan              36) Qatar

3) Azerbaijan           20) Kazakhstan           37) Russia

4) Bahrain               21) Korea (North)         38) Saudi Arabia

5) Bangladesh           22) Korea (South)         39) Singapore

6) Bhutan               23) Kuwait              40) Sri Lanka

7) Brunei               24) Kyrgyzstan           41) Syria

8) Cambodia             25) Laos                 42) Taiwan

9) China                 26) Lebanon               43) Tajikistan

10) Cyprus               27) Macao                44) Thailand

11) Georgia               28) Malaysia             45) Turkmenistan

12) Hong Kong             29) Mongolia             46) United Arab Emirates

13) India                 30) Myanmar (Burma)       47) Uzbekistan

14) Indonesia            31) Nepal                 48) Vietnam

15) Iran                 32) Oman                 49) Yemen

16) Iraq                 33) Pakistan

17) Israel               34) Palestine

#? 13 <———————————————-

 

The following information has been given:

 

India

 

Therefore TZ=’Asia/India’ will be used.

Local time is now:     Tue Aug 12 19:14:46 GMT 2008.

Universal Time is now: Tue Aug 12 11:14:46 UTC 2008.

Is the above information OK?

1) Yes

2) No

#? 1 <——————–type

Configuring the system. Please wait…

Changing owners and file permissions.

Change owners and permissions complete.

INIT: Switching to runlevel: 4

INIT: Sending processes the TERM signal

STARTED: cli_server.sh

STARTED: ntp_startup.sh

STARTED: LDAP_startup.sh

STARTED: superthread_startup.sh

STARTED: SQL_startup.sh

STARTED: HTTP_startup.sh

STARTED: ${ROOT}/usr/wfavvid/run

STARTED: probe

STARTED: dwnldr_startup.sh

 

waiting 202 …

 

IMPORTANT::

IMPORTANT:: Create an administrator account. With this account,

IMPORTANT:: you can log in to the Cisco Unity Express GUI and

IMPORTANT:: run the initialization wizard.

IMPORTANT::

 

Enter administrator user ID:

(user ID): administrator     ^H^H

**************************************************

administrator is not a valid user ID.

A valid user ID:

1) must start with a letter

2) may contain letters, numbers, hyphens, underscores or dots

3) must end with a letter or a number

4) must contain no fewer than 2 characters

5) must contain no more than 31 characters

**************************************************

Enter administrator user ID:

(user ID): administrator

Enter password for :

(password):

Confirm password for by reentering it:

(password):

 

sTEP#1 create a ccn subsystem sip

——

CUE#config t

CUE(config)# ccn subsystem sip

CUE(config-sip)# gateway address 192.168.20.254

CUE(config-sip)# enable

CUE(config-sip)# end

 

Step#4#2 create a ccn trigger sip

————————–

 

CUE(config)#

CUE(config)# ccn trigger sip phonenumber 4444

Adding new trigger

CUE(config-trigger)# enabled

CUE(config-trigger)# application voicemail

CUE(config-trigger)# end

CUE(config)#

 

Step#5 create users on CUE, associate them with their phones and create Voice mailbox for them.

—————————————————————————–

CUE(config)#

CUE(config)# username sitec1 create

CUE(config)# username sitec1 phonenumber 5001<–sitec phone1

CUE(config)# username sitec2 create

CUE(config)# username sitec1 phonenumber 5002<–sitec phoen2

CUE(config)#

CUE(config)# groupname sales create <—-how to create a GDM

CUE(config)# groupname sales phonenumber 5555

CUE(config)# groupname sales member sitec1

CUE(config)# groupname sales member sitec2

CUE(config)#

CUE(config)# voicemail callerid <—this is a must

CUE(config)#

CUE(config)# voicemail mailbox owner sitec1

CUE(config-mailbox)# no tutorials

CUE(config-mailbox)# no tutorial

CUE(config-mailbox)# end

 

CUE(config)# voicemail mailbox owner sitec2

CUE(config-mailbox)# no tutorial

CUE(config-mailbox)# end

 

CUE(config)# voicemail mailbox owner sales

CUE(config-mailbox)# no tuto

CUE(config-mailbox)# end

CUE(config)# exit

CUE#

CUE# username sitec1 pin 12345 <–these are pin#

CUE# username sitec2 pin 12345 <–these are pin#

CUE#

CUE# wr

 

note, I prectice the CLI only and it hardly took 5 minutes to do everything.

 

Trick#1: Never use GUI [unless specified to do so]. You’ll know why not to use once u get caught into the the CUE GUI lunch! [its just $1400 lunch + GST damn!!]

 

Trick#2: CME only support 1 alternate extension so if there is a requirement for more

than 1 , use voice translation profile on CME dialpeer pointing to CME (incoming/outgoing).

 

Trick#3: by default mwi-on/off are 8000/8001 in CUE system. If needs to be modify them then in CUE

just do ‘show run’ on cue module and u will see below output, just copy into notepad modify

them according to your need and paste back into the cue;

 

ccn application ciscomwiapplication

description “ciscomwiapplication”

enabled

maxsessions 6

script “setmwi.aef”

parameter “CallControlGroupID” “0″

parameter “strMWI_OFF_DN” “8001″ <———-

parameter “strMWI_ON_DN” “8000″ <—————-

end application

CUE to Unity VPIM Networking

 

VPIM is an industry standard protcol for integrating differnt voicemail systems. Cisco CUE supports – CUE to CUE vpim networking without any DNS server, also CUE to unity. CUE to unity vpim integration must have a DNS server.

 

The other typical scenario could be CUE without any DNS server [since CUE vpim networking can work without DNS. CUE assumes MX record being a site email address.] and unity uses DNS server.

 

Basic idea of vpim is to save the expensive T1 timeslots to send VoiceMAIL and instead send it via internet or an IP network. For example, if you are sending a VM from Australia to Paris, normally it will go via GSM/TDM

network, but if VPM or similar protocol is being used at GSM/cellular operator’s MSC they can route that

perticular Voice message via internet to Paris. So end of the day it comes to cut the cost of an expensive

 

Its pretty easy task. Lets assume, you’ve;

 

CUE dns = 1.1.1.1

CUE domain; cue.ccievoice.com

Unity domain; unity.ccievoice.com

 

CUE phones DN# 5001 5002

CCM phones DN# 6001 6002

Unity network location id# 100

CUE network location id# 200

 

Scenario/what we are trying to achieve here; VPIM between HQ and siteC users should work and vice-versa.

 

CUE side config

===========

Step#1.

make sure you put DNS address during initial CUE configuration screen. if u didn’t do it that time

u can do later on by using ip name server <dns ip> in config t mode.

 

Step#2 create 2 locations, one for CUE and one for Unity.

 

CUE# config t

Enter configuration commands, one per line. End with CNTL/

CUE(config)#

CUE(config)# network location id 100 <———-for unity

CUE(config-location)# name Unity

CUE(config-location)# email domain unity.ccievoice.com

CUE(config-location)# enable

CUE(config-location)# end

CUE(config)#

CUE(config)# network location id 200 <—- for CUE

CUE(config-location)# name CUE

CUE(config-location)# enable

CUE(config-location)# email domain cue.ccievoice.com

CUE(config-location)# end

CUE(config)#

 

Now make CUE as a local domain on CUE module itself;

 

CUE(config)#

CUE(config)#

CUE(config)# network local location id 200

CUE(config)#

Thats all on CUE, now below are what needs to be done on Unity;

 

Unity Configuration;

=============================================

 

It took me a while to work out I need a license on Unity. I was able to arrange a demo license

from our local Cisco-AM. So if u don’t have u may get it the license in that way to practice for the voicelab.

 

So here we go, the steps are below;

 

1. Make sure that you’ve VPIM license installed on Unity. VPIM networking is a special feature of Cisco unity which needs a valid [**shrug**] licsense to run vpim. U can use Unity SA web interface to check the license.

 

2. Since I am using unity server as a DNS server for both CUE and Unity VPIM networking, I added 2.2.2.2 as a IP alias in Unity TCP/IP property. Just to keep the IP addie separate. U can use the existing IP but I like to keep things separate. Also 2.2.2.2 should be reacheble from CME.

 

DNS prepration; – Create 2 zones in Unity DNS;

a. cue.ccievoice.com – add A and MX record, put ip addie of cue in these records.

b. unity.ccievoice.com – add A and MX records, put ip add of unity in these records

c. Make sure you’ve installed Unity Schema from unity CD#1. If this is not installed you’

would not be able to create vpim locations. unity will let you add the location but when u

click on ok at the end of location creation, it will return with nothing.

d. Make sure you’ve installed unity voicemail connector, otherwise when u try adding the

unity location, u won’t see the vpim protocol options.

e. Make sure your unity server and CUE module has a DNS ip addie 2.2.2.2.

 

3.   Add the unity local locations for HQ itself. Put an email domain as unity.ccievoice.com. Assign ID=100. Don’t forget to click on Address option and select “global address” option.

 

4. Add Delivery location for SITEC/CUE. Assign vpim 200 as a VPIM ID. email domain=cue.ccievoice.com

The final CUE config should looks like something to this; please don’t worry about all other fucking craps in the below config. Just pay attention what you’ve just done in the above steps.

 

CUE#

CUE# sh run

Generating configuration:

 

clock timezone Asia/INDIA

 

hostname CUE

 

ip domain-name localdomain

 

ntp server 2.2.2.2

 

software download server url “ftp://127.0.0.1/ftp” credentials hidden “

sEuSAEfw40XlF2eFHnZfyUTSd8ZZNgd+Y9J3xlk2B35j0nfGWTYHfmPSd8ZZNgd+Y9J3xlk

WTYHfmPSd8ZZNgd+Y9J3xlk2B35j0nfGWTYHfmP”

 

groupname Administrators create

groupname Broadcasters create

groupname sales create

 

username administrator create

username sitec1 create

username sitec2 create

 

groupname sales phonenumber “5555″

 

username sitec1 phonenumber “5002″

 

groupname Administrators member administrator

groupname sales member sitec1

groupname sales member sitec2

groupname Administrators privilege superuser

groupname Administrators privilege ManagePrompts

groupname Administrators privilege broadcast

groupname Administrators privilege local-broadcast

groupname Administrators privilege ManagePublicList

groupname Administrators privilege ViewPrivateList

groupname Administrators privilege vm-imap

groupname Broadcasters privilege broadcast

 

restriction msg-notification min-digits 1

restriction msg-notification max-digits 30

restriction msg-notification dial-string preference 1 pattern * allowed

 

backup server url “ftp://127.0.0.1/ftp” credentials hidden “EWlTygcMhYm

XHCkplVV4KjescbDaLa4fl4WLSPFvv1rWUnfGWTYHfmPSd8ZZNgd+Y9J3xlk2B35j0nfGWT

ZNgd+Y9J3xlk2B35j0nfGWTYHfmP”

 

calendar biz-schedule systemschedule

open day 1 from 00:00 to 24:00

open day 2 from 00:00 to 24:00

open day 3 from 00:00 to 24:00

open day 4 from 00:00 to 24:00

open day 5 from 00:00 to 24:00

open day 6 from 00:00 to 24:00

open day 7 from 00:00 to 24:00

end schedule

 

ccn application autoattendant

description “autoattendant”

enabled

maxsessions 6

script “aa.aef”

parameter “busOpenPrompt” “AABusinessOpen.wav”

parameter “operExtn” “0″

parameter “welcomePrompt” “AAWelcome.wav”

parameter “disconnectAfterMenu” “false”

parameter “busClosedPrompt” “AABusinessClosed.wav”

parameter “allowExternalTransfers” “false”

parameter “holidayPrompt” “AAHolidayPrompt.wav”

parameter “businessSchedule” “systemschedule”

parameter “MaxRetry” “3″

end application

 

ccn application ciscomwiapplication

description “ciscomwiapplication”

enabled

maxsessions 6

script “setmwi.aef”

parameter “CallControlGroupID” “0″

parameter “strMWI_OFF_DN” “8001″

parameter “strMWI_ON_DN” “8000″

end application

 

ccn application msgnotification

description “msgnotification”

enabled

maxsessions 6

script “msgnotify.aef”

parameter “logoutUri” “http://localhost/voicemail/vxmlscripts/mbxLogou

parameter “DelayBeforeSendDTMF” “1″

end application

 

ccn application promptmgmt

description “promptmgmt”

enabled

maxsessions 1

script “promptmgmt.aef”

end application

 

ccn application voicemail

description “voicemail”

enabled

maxsessions 6

script “voicebrowser.aef”

parameter “uri” “http://localhost/voicemail/vxmlscripts/login.vxml

parameter “logoutUri” “http://localhost/voicemail/vxmlscripts/mbxLogou

end application

 

ccn engine

end engine

 

ccn subsystem jtapi

ccm-manager address 0.0.0.0

end subsystem

 

ccn subsystem sip

gateway address “192.168.20.254″ <======cme router eth0/0 ip addie

end subsystem

 

ccn trigger sip phonenumber 4444

application “voicemail”

enabled

maxsessions 6

end trigger

 

network location id “100″

email domain unity.ccievoice.com

name “Unity”

voicemail broadcast vpim-id vpim-broadcast

voicemail vpim-encoding dynamic

end location

 

network location id “200″

email domain cue.ccievoice.com

name “CUE”

voicemail broadcast vpim-id vpim-broadcast

voicemail vpim-encoding dynamic

end location

 

network local location id 200

 

voicemail callerid

voicemail default mailboxsize 2964

voicemail broadcast recording time 300

voicemail mailbox owner “sales” size 2964

end mailbox

 

voicemail mailbox owner “sitec1″ size 2964

end mailbox

 

voicemail mailbox owner “sitec2″ size 2964

end mailbox

 

end

CUE#

 

TESTING:

——-

CUE voicemail testing:

1. CUE testing is easy – make a call from 5001 to 5002 , leave a VM for 5002. You should check MWI on 5002 should lit up once u left the VM. press MSG button on 5002 and see if you can log into the 5002′s mailbox.

2. if there is an issue use ‘debug ccsip inout’ and see whats the issue is.

3. In most cases, the issue is with number of dots you put in your mwi-on/off config. Make sure there are enough dots (…. 4 dots after mwi number). Also incoming called number should be in one of the voip dial peer. I normally put everything on one dialpeer which is pointing to CUE.

VPIM testing;

 

1. Test from CME phone 5001 to hq phone 3001 – Hit MESG button on CME phone, select option#2 (send VM), follow the instruction and do what Cisco lady tells u, then when that lady says dial, then dial vpimID(100) + hq-ext-number(3001).

so in a nutshell, to leave a message form 5001 to 3001, you need to go to voicemail option of 5001 and then dial the destination vpim location id (e..g 100 in this case) followed by the destination phone number e..g 3001. Once the message is left, you should see MWI lamp on 3001.

Common VPIM gochas!!

————-

 

1. In Unity server the most common issue I have seen with first timer – When adding delivery locations with destination type “VPIM”, it won’t show you any error message but the added new delivery location won’t appear in the list, however if you add the destination type non-vpim i.e. SMTP, unity will show that in the list.

 

On one of the Cisco doc it says that “It has been identified as a but and this bug has been fixed in next release! damn what a fake statement!”

 

In practical, the solution was I forgot to install the voice connector and fucking microsoft Active directory SCHEMA. Both can be installed from the disk#1 of Unity installation media. AFter that no more issue with creating the vpim delivery location.

 

2. One WAY message; wankers complains that they’ve one way voicemail message. e.g. cue to unity works but unity to cue doesn’t. hehe… Most likely you need to check the MX record entry in the DNS zone file. DNS should be configured properly. Its damn easy, yo don’t really need to be a expert in the learning Microsoft crap. I have also tested this wtih a LINUX bind DNS server – works great for me.

 

3. Message arriving late – in your exchange server configuration option on unity server , make sure the retry time of smtp is set minimum time. Also schema is okay there. Check your voicemail connector statistics on exchangeserver admin page.

 

I would strongly recommend to use the debug commands on CUE to troubleshoot the DNS or message arriving late issues. there is a command on CUE u can use to see what the F*** happening inside the CUE which gives you fair bit of idea of if it is dns issue or what.